package com.vogue.supplymall.common.config;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
/**
 * 通用的属性文件加载配置类
 * @author cy
 */
@Component("currencyPropertiesConfig")
public class CurrencyPropertiesConfig {
    /**
     * 计划分区表
     */
    @Value("${distinguish.plat.tables}")
    private String platTables;

    /**
     * 提供服务的扫描包路径
     */
    @Value("${akka.scan.package}")
    private String akkaScanPackage;
    
    /**
     * 分布服务启动日志级别
     */
    @Value("${akka.loglevel}")
    private String akkaLoglevel;

    /**
     * 分布服务提供方启动接口
     */
    @Value("${akka.remote.netty.tcp.port}")
    private String akkaRemoteNettyTcpPort;
    
    /**
     * 分布服务提供方启动ip
     */
    @Value("${akka.remote.netty.tcp.hostname}")
    private String akkaRemoteNettyTcpHostname;
    
    /**
     * 分布服务提供方启动服务名称
     */
    @Value("${akka.remote.netty.tcp.servername}")
    private String akkaRemoteNettyTcpServername;
    
    /**
     * 最小服务数
     */
    @Value("${akka.remote.netty.tcp.min}")
    private String akkaRemoteNettyTcpMin;
    
    /**
     * 最大服务数
     */
    @Value("${akka.remote.netty.tcp.max}")
    private String akkaRemoteNettyTcpMax; 
    
    /**
     * 框架最大容量
     */
    @Value("${akka.remote.netty.tcp.maxsize}")
    private String akkaRemoteNettyTcpMaxsize; 
    
    /**
     * 分布服务调用方配置服务端的信息参数（JSON数组字符串自行转换）
     */
    @Value("${akka.client.info}")
    private String akkaClientInfo;
    
    /**
     * @return 所有分区表名称
     */
    public String getPlatTables() {
        return platTables;
    }

    /**
     * @return 分布服务启动日志级别
     */
    public String getAkkaLoglevel() {
        return akkaLoglevel;
    }

    /**
     * @return 分布服务提供方启动接口
     */
    public String getAkkaRemoteNettyTcpPort() {
        return akkaRemoteNettyTcpPort;
    }

    /**
     * @return 分布服务提供方启动ip
     */
    public String getAkkaRemoteNettyTcpHostname() {
        return akkaRemoteNettyTcpHostname;
    }

    /**
     * @return 分布服务提供方启动服务名称
     */
    public String getAkkaRemoteNettyTcpServername() {
        return akkaRemoteNettyTcpServername;
    }

    /**
     * @return 最小服务数
     */
    public String getAkkaRemoteNettyTcpMin() {
        return akkaRemoteNettyTcpMin;
    }
    
    /**
     * @return 最大服务数
     */
    public String getAkkaRemoteNettyTcpMax() {
        return akkaRemoteNettyTcpMax;
    }

    /**
     * @return 框架最大容量
     */
    public String getAkkaRemoteNettyTcpMaxsize() {
        return akkaRemoteNettyTcpMaxsize;
    }

    /**
     * @return 分布服务调用方配置服务端的信息参数（JSON数组字符串自行转换）<br>
     * 格式如下：<br>
     * [<br>
     *     {<br>
     *         "servername":"account",    --远程服务名称<br>
     *         "serverport":"2554",    --远程服务端口<br>
     *         "serverhostname":"127.0.0.1",    --远程服务ip<br>
     *         "classlist":    --需要调用的相关的该远程地址的接口类名<br>
     *         [<br>
     *             {<br>
     *                 "name":"com.vogue.supplymall.account.domain.service.BaseCategoryService"    --类名称（包名全路径）<br>
     *             }<br>
     *         ]<br>
     *     }<br>
     * ]<br>
     */
    public String getAkkaClientInfo() {
        return akkaClientInfo;
    }

    /**
     * @return 提供服务的扫描包路径
     */
    public String getAkkaScanPackage() {
        return akkaScanPackage;
    }
    
}
